package uslugi;

import java.util.*;

import util.MathUtil;

public class EkstensjaLokata {

	private List<Lokata> lokaty;
	
	private List<Lokata> lokatyNiskie;
	
	private List<Lokata> lokatySrednie;
	
	private List<Lokata> lokatyWysokie;
	
	public EkstensjaLokata(List<Lokata> lokaty){
		this.lokaty = lokaty;
		
		lokatyNiskie = new ArrayList<Lokata>();
		lokatySrednie = new ArrayList<Lokata>();
		lokatyWysokie = new ArrayList<Lokata>();
		
		podzielLokaty();
	
	}

	// Wielkosc lokaty dzielimy na podstawie kapitalizacji
	// Roczna - lokata niska
	// Msc - lokata srednia
	// Dzienna - lokata wysoka
	private void podzielLokaty(){

		for(Lokata l: lokaty){
			
			switch(l.getKapitalizacja()){
			case R: lokatyNiskie.add(l) ;break;
			case M: lokatySrednie.add(l); break;
			case D: lokatyWysokie.add(l); break;
			}
				
		}
		
		
	}

	public List<Lokata> getLokaty() {
		return lokaty;
	}

	public Lokata getLosowaLokateNiska(){
		
		return lokatyNiskie.get(MathUtil.losujInta(0, lokatyNiskie.size() - 1));
	
	}
	
	public Lokata getLosowaLokateSrednia(){
		
		return lokatySrednie.get(MathUtil.losujInta(0, lokatySrednie.size() - 1));
	
	}	
	
	public Lokata getLosowaLokateWysokie(){
		
		return lokatyWysokie.get(MathUtil.losujInta(0, lokatyWysokie.size() - 1));
	
	}	
}
